/*
 * TUIOGUIEventHandler.h
 *
 *  Created on: Aug 22, 2010
 *      Author: Ry
 */

#ifndef TUIOGUIEVENTHANDLER_H_
#define TUIOGUIEVENTHANDLER_H_

#include <vector>
#include <GameWindow.h>
#include <gui/GUI.h>
#include <gui/GUIEvent.h>

#include "Cursor.h"
#include "TUIOEventHandler.h"

class TUIOGUIEventHandler : public TUIOEventHandler {
private:
	GUI *gui;
	GameWindow *window;
	std::vector<Cursor*> *cursors;

	void search(std::vector<Component*> (*insideCallback)(Component*), std::vector<Component*> (*outsideCallback)(Component*));
public:
	TUIOGUIEventHandler(GUI *gui, GameWindow *window, std::vector<Cursor*> *cursors);
	void handleEvent(float dts);
	virtual ~TUIOGUIEventHandler();
};

#endif /* TUIOGUIEVENTHANDLER_H_ */
